1. Field of the Invention
The present invention relates in general to the field of information handling systems and more specifically, to systems management.
2. Description of the Related Art
As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Information handling systems continue to grow in power, capabilities and variety, and with the advent of the Internet, they have also become more numerous and more distributed. As a result, their management has become increasingly complex, in part due to the growing heterogeneity of the elements that comprise them and the diversity of their associated management environments. In response, the Distributed Management Task Force (DMTF) has developed frameworks that facilitate the interoperable exchange of management information between managed elements and corresponding management systems. One of these frameworks is the Common Information Model (CIM), which provides a consistent definition and structure of management information through the use of object-oriented techniques. As a conceptual information model, the CIM is structured such that managed environments can be viewed as collections of interrelated systems, each of which is comprised of a number of discrete elements.
The CIM, comprised of a specification and a schema, allows management-related information about these elements to be transparently exchanged between management systems. The specification describes an object-oriented meta model based on the Unified Modeling Language (UML) and defines how the CIM can be integrated with other management models. These include, but are not limited to, Simple Network Management Protocol (SNMP) Management Information Base (MIB) or DMTF Management Information Format (MIF). The CIM schema provides a set of classes with properties, methods and associations that define how managed elements in an environment are represented as a common set of objects. In the CIM model, managed objects such as processors, sensors and fans are presented as CIM classes, with the relationships between these managed objects presented through association classes. This hierarchical, object-oriented architecture facilitates the tracking and depiction of the often complex interdependencies and associations between managed objects.
However, the CIM object model presents certain limitations in its current state. For example, multiple inheritances are not supported, requiring inefficient and sometimes redundant traversal of classes comprising the model. Lack of support for multiple inheritances also makes it difficult to build CIM clients capable of possessing complete knowledge of the model. In addition, since class, version, security, service level, and maintenance information are modeled in different classes, there is no easy way to extend the model to support new elements. Furthermore, limitations in the object model used by the CIM and the CIM object manager (CIMOM) does not enable requiring the provision of concrete user class information such as version, security, service level, or other operational maintenance requirements. Likewise, it does not enable an abstract base class, template, or namespace that drives user class parameter requirements. The further lack of polymorphism to traverse its current inheritance hierarchy, combined with the absence of linking or embedding options for performance and security, places additional constraints on its use. In view of the foregoing, there is a need to make the CIM more flexible and extensible without requiring changes to it or its existing implementations.